package com.ys.entity.business;
import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.Table;
import com.alibaba.fastjson.annotation.JSONField;
import com.ys.annotation.YsField;
import com.ys.entity.base.BaseEntity;
/**
*/
@Table(name="TP_ProductBasisComponent", catalog="Id")
public class TpProductBasisComponent extends BaseEntity<TpProductBasisComponent> {

	@YsField(nameDataBase="Id", nameJava="id", typeDataBase="bigint")
	private Long id;
	@YsField(nameDataBase="Pcode", nameJava="pcode", typeDataBase="varchar")
	private String pcode;
	@YsField(nameDataBase="Name", nameJava="name", typeDataBase="varchar")
	private String name;
	@YsField(nameDataBase="Code", nameJava="code", typeDataBase="varchar")
	private String code;
	@YsField(nameDataBase="Num", nameJava="num", typeDataBase="decimal")
	private BigDecimal num;
	@YsField(nameDataBase="Remark", nameJava="remark", typeDataBase="varchar")
	private String remark;
	@YsField(nameDataBase="Bprice", nameJava="bprice", typeDataBase="decimal")
	private BigDecimal bprice;
	@YsField(nameDataBase="Bprices", nameJava="bprices", typeDataBase="decimal")
	private BigDecimal bprices;
	@YsField(nameDataBase="SubCodeMerge", nameJava="subCodeMerge", typeDataBase="varchar")
	private String subCodeMerge;
	@YsField(nameDataBase="LinkIn", nameJava="linkIn", typeDataBase="varchar")
	private String linkIn;
	@YsField(nameDataBase="LinkInMark", nameJava="linkInMark", typeDataBase="varchar")
	private String linkInMark;
	@YsField(nameDataBase="InvoiceModelNo", nameJava="invoiceModelNo", typeDataBase="varchar")
	private String invoiceModelNo;
	@YsField(nameDataBase="InvoiceName", nameJava="invoiceName", typeDataBase="varchar")
	private String invoiceName;
	@YsField(nameDataBase="CustomsCode", nameJava="customsCode", typeDataBase="varchar")
	private String customsCode;
	@YsField(nameDataBase="ExemptionTax", nameJava="exemptionTax", typeDataBase="varchar")
	private String exemptionTax;
	@YsField(nameDataBase="CountryName", nameJava="countryName", typeDataBase="varchar")
	private String countryName;
	@YsField(nameDataBase="CustomsExplain", nameJava="customsExplain", typeDataBase="varchar")
	private String customsExplain;
	@YsField(nameDataBase="SingleWeight", nameJava="singleWeight", typeDataBase="decimal")
	private BigDecimal singleWeight;
	@YsField(nameDataBase="NetWeight", nameJava="netWeight", typeDataBase="decimal")
	private BigDecimal netWeight;
	@YsField(nameDataBase="NegotiatedPrice", nameJava="negotiatedPrice", typeDataBase="decimal")
	private BigDecimal negotiatedPrice;
	@YsField(nameDataBase="Status", nameJava="status", typeDataBase="tinyint")
	private Integer status;
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	@YsField(nameDataBase="CreateTime", nameJava="createTime", typeDataBase="datetime")
	private Date createTime;
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	@YsField(nameDataBase="UpdateTime", nameJava="updateTime", typeDataBase="datetime")
	private Date updateTime;

	public Long getId() {
		return id;
	}
	public TpProductBasisComponent setId(Long id) {
		this.id = id;
		return this;
	}
	public String getPcode() {
		return pcode;
	}
	public TpProductBasisComponent setPcode(String pcode) {
		this.pcode = pcode;
		return this;
	}
	public String getName() {
		return name;
	}
	public TpProductBasisComponent setName(String name) {
		this.name = name;
		return this;
	}
	public String getCode() {
		return code;
	}
	public TpProductBasisComponent setCode(String code) {
		this.code = code;
		return this;
	}
	public BigDecimal getNum() {
		return num;
	}
	public TpProductBasisComponent setNum(BigDecimal num) {
		this.num = num;
		return this;
	}
	public String getRemark() {
		return remark;
	}
	public TpProductBasisComponent setRemark(String remark) {
		this.remark = remark;
		return this;
	}
	public BigDecimal getBprice() {
		return bprice;
	}
	public TpProductBasisComponent setBprice(BigDecimal bprice) {
		this.bprice = bprice;
		return this;
	}
	public BigDecimal getBprices() {
		return bprices;
	}
	public TpProductBasisComponent setBprices(BigDecimal bprices) {
		this.bprices = bprices;
		return this;
	}
	public String getSubCodeMerge() {
		return subCodeMerge;
	}
	public TpProductBasisComponent setSubCodeMerge(String subCodeMerge) {
		this.subCodeMerge = subCodeMerge;
		return this;
	}
	public String getLinkIn() {
		return linkIn;
	}
	public TpProductBasisComponent setLinkIn(String linkIn) {
		this.linkIn = linkIn;
		return this;
	}
	public String getLinkInMark() {
		return linkInMark;
	}
	public TpProductBasisComponent setLinkInMark(String linkInMark) {
		this.linkInMark = linkInMark;
		return this;
	}
	public String getInvoiceModelNo() {
		return invoiceModelNo;
	}
	public TpProductBasisComponent setInvoiceModelNo(String invoiceModelNo) {
		this.invoiceModelNo = invoiceModelNo;
		return this;
	}
	public String getInvoiceName() {
		return invoiceName;
	}
	public TpProductBasisComponent setInvoiceName(String invoiceName) {
		this.invoiceName = invoiceName;
		return this;
	}
	public String getCustomsCode() {
		return customsCode;
	}
	public TpProductBasisComponent setCustomsCode(String customsCode) {
		this.customsCode = customsCode;
		return this;
	}
	public String getExemptionTax() {
		return exemptionTax;
	}
	public TpProductBasisComponent setExemptionTax(String exemptionTax) {
		this.exemptionTax = exemptionTax;
		return this;
	}
	public String getCountryName() {
		return countryName;
	}
	public TpProductBasisComponent setCountryName(String countryName) {
		this.countryName = countryName;
		return this;
	}
	public String getCustomsExplain() {
		return customsExplain;
	}
	public TpProductBasisComponent setCustomsExplain(String customsExplain) {
		this.customsExplain = customsExplain;
		return this;
	}
	public BigDecimal getSingleWeight() {
		return singleWeight;
	}
	public TpProductBasisComponent setSingleWeight(BigDecimal singleWeight) {
		this.singleWeight = singleWeight;
		return this;
	}
	public BigDecimal getNetWeight() {
		return netWeight;
	}
	public TpProductBasisComponent setNetWeight(BigDecimal netWeight) {
		this.netWeight = netWeight;
		return this;
	}
	public BigDecimal getNegotiatedPrice() {
		return negotiatedPrice;
	}
	public TpProductBasisComponent setNegotiatedPrice(BigDecimal negotiatedPrice) {
		this.negotiatedPrice = negotiatedPrice;
		return this;
	}
	public Integer getStatus() {
		return status;
	}
	public TpProductBasisComponent setStatus(Integer status) {
		this.status = status;
		return this;
	}
	public Date getCreateTime() {
		return createTime;
	}
	public TpProductBasisComponent setCreateTime(Date createTime) {
		this.createTime = createTime;
		return this;
	}
	public Date getUpdateTime() {
		return updateTime;
	}
	public TpProductBasisComponent setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
		return this;
	}

	public static TpProductBasisComponent tpProductBasisComponent(
		String pcode,
		String name,
		String code,
		BigDecimal num,
		String remark,
		BigDecimal bprice,
		BigDecimal bprices,
		String subCodeMerge,
		String linkIn,
		String linkInMark,
		String invoiceModelNo,
		String invoiceName,
		String customsCode,
		String exemptionTax,
		String countryName,
		String customsExplain,
		BigDecimal singleWeight,
		BigDecimal netWeight,
		BigDecimal negotiatedPrice,
		Integer status
			) {
		TpProductBasisComponent entity = new TpProductBasisComponent();
		entity.setPcode(pcode);
		entity.setName(name);
		entity.setCode(code);
		entity.setNum(num);
		entity.setRemark(remark);
		entity.setBprice(bprice);
		entity.setBprices(bprices);
		entity.setSubCodeMerge(subCodeMerge);
		entity.setLinkIn(linkIn);
		entity.setLinkInMark(linkInMark);
		entity.setInvoiceModelNo(invoiceModelNo);
		entity.setInvoiceName(invoiceName);
		entity.setCustomsCode(customsCode);
		entity.setExemptionTax(exemptionTax);
		entity.setCountryName(countryName);
		entity.setCustomsExplain(customsExplain);
		entity.setSingleWeight(singleWeight);
		entity.setNetWeight(netWeight);
		entity.setNegotiatedPrice(negotiatedPrice);
		entity.setStatus(status);
		return entity;
	}
}